]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
jsParse: Replace eval()
authorFlorian Müllner <fmuellner@gnome.org>
Wed, 12 Jul 2023 23:52:06 +0000 (01:52 +0200)
committerMarge Bot <marge-bot@gnome.org>
Fri, 14 Jul 2023 12:36:53 +0000 (12:36 +0000)
The evil() function is considered eval, replace it like we
already did in looking glass.

Part-of: <https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/2842>

js/misc/jsParse.js

index 97a6ce470f0032bf6bdfed28b2b00e13bc649be3..18ce703982a0cf5a91ba99e89efa1f334f5044d6 100644 (file)
@@ -197,7 +197,9 @@ function getPropertyNamesFromExpression(expr, commandHeader = '') {
     let obj = {};
     if (!isUnsafeExpression(expr)) {
         try {
-            obj = eval(commandHeader + expr);
+            const lines = expr.split(';');
+            lines.push(`return ${lines.pop()}`);
+            obj = Function(commandHeader + lines.join(';'))();
         } catch (e) {
             return [];
         }